@echo off
setlocal enabledelayedexpansion

REM 配置路径
set BASE_DIR=C:\Users\Administrator\IdeaProjects\sparrow\example_message
set PROTO_DIR=%BASE_DIR%\proto
set OUT_DIR=%BASE_DIR%\client_proto
set PROTOC_PATH=%BASE_DIR%\protoc.exe

REM 初始化文件列表
set FILE_LIST=

REM 遍历 proto 目录及子目录的所有 proto 文件
for /r "%PROTO_DIR%" %%f in (*.proto) do (
    set FILE_LIST=!FILE_LIST! "%%f"
)

REM 输出检查
echo Files to generate: !FILE_LIST!

REM 一次性调用 protoc
"%PROTOC_PATH%" --proto_path="%PROTO_DIR%" --csharp_out="%OUT_DIR%" !FILE_LIST!

echo generate cs file over

pause

